Interface IRedbGroupedQueryable<TKey, TProps>

Assembly: redb.Core.dll

Interface for grouped REDB queries.
Allows executing aggregations per group via SelectAsync.

public interface IRedbGroupedQueryable<TKey, TProps> where TProps : class, new()

Methods

CountAsync()

Returns group count.

Task<int> CountAsync()

SelectAsync<TResult>(Expression<Func<IRedbGrouping<TKey, TProps>, TResult>>)

Executes projection with aggregations for each group.

Task<List<TResult>> SelectAsync<TResult>(Expression<Func<IRedbGrouping<TKey, TProps>, TResult>> selector)

ToSqlStringAsync<TResult>(Expression<Func<IRedbGrouping<TKey, TProps>, TResult>>)

Returns SQL string that will be executed for this GroupBy query.

Task<string> ToSqlStringAsync<TResult>(Expression<Func<IRedbGrouping<TKey, TProps>, TResult>> selector)

WithWindow(Action<IGroupedWindowSpec<TKey, TProps>>)

Apply window functions to grouped results.

IGroupedWindowedQueryable<TKey, TProps> WithWindow(Action<IGroupedWindowSpec<TKey, TProps>> windowConfig)